/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;

/**
 *
 * @author MauroH
 */

import java.sql.Date;

public class Usuario {
    
    /**
     * Atributos
     */    
    private String nome;
    private String cpf;
    private Date dt_nascimento;
    private String sexo;
    private String email;
    private String telefone;
    private String username;
    private String senha;
    private Boolean is_ativo = true;
    private Boolean is_admin = false;
    
    /***************************************************************************
     * Construtores
     ***************************************************************************
     */
    public Usuario() {
    }

    public Usuario(String cpf, String username, String senha, String nome,  Date dt_nascimento, String sexo, String email, String telefone, Boolean is_ativo, Boolean is_admin) {
        this.cpf = cpf;
        this.username = username;
        this.senha = senha;
        this.nome = nome;        
        this.dt_nascimento = dt_nascimento;
        this.sexo = sexo;
        this.email = email;
        this.telefone = telefone;
        this.is_ativo = is_ativo;
        this.is_admin = is_admin;
    }

    /***************************************************************************
     * Métodos Getters and Setters
     * *************************************************************************
     */
    
    /**
     * Método para retornar o nome do usuário
     * @return String - Nome
     */
    public String getNome() {
        return nome;
    }
    
    /**
     * Método para alterar o atributo nome do usuário
     * @param nome - String nome
     */
    public void setNome(String nome) {
        this.nome = nome;
    }
    
    /**
     * Método para retornar o atributo cpf
     * @return String - cpf
     */
    public String getCpf() {
        return cpf;
    }
    
    /**
     * Método para alterar o atributo cpf
     * @param cpf - String cpf
     */
    public void setCpf(String cpf) {
        this.cpf = cpf;
    }

    /**
     * Método para retornar a data de nascumento do usuário
     * @return Date - dt_nascimento
     */    
    public Date getDt_nascimento() {
        return dt_nascimento;
    }
    
    /**
     * Método para alterar o atributo data de nascumento do usuário
     * @param dt_nascimento - Date dt_nascimento
     */
    public void setDt_nascimento(Date dt_nascimento) {
        this.dt_nascimento = dt_nascimento;
    }
    
    /**
     * Método para retornar o atributo sexo do usuário
     * @return String - sexo
     */
    public String getSexo() {
        return sexo;
    }
    
    /**
     * Método para alterar o atributo sexo do usuário
     * @param sexo - String sexo
     */
    public void setSexo(String sexo) {
        this.sexo = sexo;
    }
    
    /**
     * Método para retornar o email do usuário
     * @return String - email
     */
    public String getEmail() {
        return email;
    }

    /**
     * Método para alterar o atributo email do usuário
     * @param email - String email
     */
    public void setEmail(String email) {
        this.email = email;
    }
    
    /**
     * Método para retornar o atributo telefone do usuário
     * @return String telefone
     */
    public String getTelefone() {
        return telefone;
    }
    
    /**
     * Método para alterar o atributo telefone do usuário
     * @param telefone - String telefone
     */
    public void setTelefone(String telefone) {
        this.telefone = telefone;
    }
    
    /**
     * Método para retornar o atributo username do usuário
     * @return String - username
     */
    public String getUsername() {
        return username;
    }

    /**
     * Método para alterar o atributo username do usuário
     * @param username - String username
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * Método para retornar o atributo senha do usuário
     * @return String - senha
     */
    public String getSenha() {
        return senha;
    }

    /**
     * Método para alterar o atributo senha do usuário
     * @param senha - Strinha senha
     */
    public void setSenha(String senha) {
        this.senha = senha;
    }
    
    /**
     * Método para retornar o valor do atributo is_ativo
     * @return - Boolean is_ativo
     */
    public Boolean getAtivo(){
        return is_ativo;
    }
    
    /**
     * Método responsável por alterar o atributo is_ativo
     * @param is_ativo - Boolean is_ativo
     */
    public void setAtivo(Boolean is_ativo){
        this.is_ativo = is_ativo;
    }

    public Boolean getIs_ativo() {
        return is_ativo;
    }

    public void setIs_ativo(Boolean is_ativo) {
        this.is_ativo = is_ativo;
    }

    public Boolean getIs_admin() {
        return is_admin;
    }

    public void setIs_admin(Boolean is_admin) {
        this.is_admin = is_admin;
    }
    
    
}
